/**
 * 登录认证相关API
 */
import request from '@/utils/request'

export default {
  /**
   * 微信小程序授权
   * @param {string} code 微信授权码
   * @returns {Promise} 授权结果
   */
  getOpenIdByCode(code) {
    return request.get('/sapi/login/getOpenIdByCode', { code })
  },

  /**
   * 微信手机号一键登录
   * @param {Object} authPhoneVo 手机号授权数据
   * @returns {Promise} 登录结果
   */
  authPhone(authPhoneVo) {
    return request.post('/sapi/login/authPhone', authPhoneVo)
  },

  /**
   * 获取登录验证码
   * @param {string} phone 手机号
   * @returns {Promise} 验证码发送结果
   */
  getLoginCode(phone) {
    return request.get('/sapi/login/getLoginCode', { phone })
  },

  /**
   * 手机号验证码登录
   * @param {Object} phoneCodeVo 手机号验证码数据
   * @param {string} phoneCodeVo.phone 手机号
   * @param {string} phoneCodeVo.code 验证码
   * @returns {Promise} 登录结果
   */
  phoneCodeLogin(phoneCodeVo) {
    return request.post('/sapi/login/phoneCodeLogin', phoneCodeVo)
  },

  /**
   * 获取店铺授权信息
   * @returns {Promise} 店铺授权信息
   */
  getShopAuth() {
    return request.get('/sapi/login/getShopAuth')
  },

  /**
   * 通过手机号获取授权信息
   * @param {string} phone 手机号
   * @returns {Promise} 授权信息
   */
  getShopAuthByPhone(phone) {
    return request.get('/sapi/login/getShopAuthByPhone', { phone })
  },

  /**
   * 获取测试token
   * @param {string} phone 手机号
   * @returns {Promise} 测试token
   */
  getTestToken(phone) {
    return request.get('/sapi/login/getTestToken', { phone })
  },

  /**
   * 手机号绑定修改
   * @param {Object} phoneCodeVo 手机号验证码数据
   * @returns {Promise} 修改结果
   */
  updatePhone(phoneCodeVo) {
    return request.post('/sapi/login/updatePhone', phoneCodeVo)
  },

  /**
   * 退出登录
   * @returns {Promise} 退出结果
   */
  logOut() {
    return request.post('/sapi/login/logOut')
  },

  /**
   * 注销账户
   * @returns {Promise} 注销结果
   */
  logOff() {
    return request.post('/sapi/login/logOff')
  }
}


